package com.ysd.product.service;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.ysd.common.entity.Img;
import com.ysd.common.entity.Product;
import com.ysd.common.entity.ProductEChart;
public interface ProductService {
	//多条件分页查询
	public List<Product> findAllBySelAndPage(Product product,int page,int limit);
	
	//商品数量
	public int findProductTotal(Product product,int page,int limit);
	
	//添加商品
	public int saveProduct(Product product);
	
	//根据id查询商品
	public int updateProduct(Product product);
	
	//删除商品
	public int delProduct(int id);
	
	//修改商品是否推荐到首页
	public int updateProductIsXss(int isxss,int id);
	
	//修改商品是否首页轮播图
	public int updateProductIsXsg(int isxsg,int id);
	
	//商品上架、下架
	public int updateProductIsXj(int isxj,int id);
	
	//购物车中检索商品是否有效
	public Map<String, Object> findProductById(String str);
	
	//前台推送上架商品，按照编号降序取前5条
	public List<Product> findAllProByIndex();
	
	//前台推送热门商品，按照权重降序取前5条
	public List<Product> findProBySellNum();
	
	//前台商品页面多条件分页商品展示
	public List<Product> findAllProByProlist(int f_pcid,String key,int page,int limit);
	
	//前台商品页面商品数量
	public int findAllProByProlistTotal(int f_pcid,String key,int page,int limit);
	
	//商品类型——所属类型商品数量统计
	public List<ProductEChart> findProCateEChart();
	
	//前台商品详情
	public Product findProById(int id);
	
	//查询商品图片
	public List<Img> findAllImgByPId(int id);
	
	//批量添加商品图片
	public int addProImgs(Img imgs);
	
	//删除商品图片
	public int delProImg(int id);
	
	//商品畅销查询，按照销量降序取前5条
	public List<Product> findProBySNum();
	
	//前台商品图片轮播
	public List<Product> findAllProByIsxsg();
	
	//根据类型编号查询类型名称
	public Product findProCateNameById(int pcid);
}
